CryptOpt: Verified Compilation with Randomized Program Search for Cryptographic Primitives

نویسندگان

چکیده

Most software domains rely on compilers to translate high-level code multiple different machine languages, with performance not too much worse than what developers would have the patience write directly in assembly language. However, cryptography has been an exception, where many performance-critical routines written (sometimes through metaprogramming layers). Some past work shown how do formal verification of that assembly, and other generate C automatically along proof, but consequent penalties vs. best- known assembly. We present CryptOpt, first compilation pipeline specializes cryptographic functional programs into significantly faster GCC or Clang produce, mechanized proof (in Coq) whose final theorem statement mentions little beyond input program operational semantics x86-64 On optimization side, we apply randomized search space programs, repeated automatic benchmarking target CPUs. formal-verification connect Fiat Cryptography framework (which translates C-like IR code) extend it a new formally verified program-equivalence checker, incorporating modest subset features SMT solvers symbolic-execution engines. The overall prototype is quite practical, e.g. producing fastest-known implementations finite-field arithmetic for both Curve25519 (part TLS standard) Bitcoin elliptic curve secp256k1 Intel 12

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

On randomized cryptographic primitives

The paper investigates the extent to which a public source of random bits can be used to obtain some basic cryptographic primitives: hard functions, pseudo-random generators and one-way functions. Strong randomized hard functions and one-way functions are exhibited. The existence of a randomized pseudo-random generators with analogous safety parameters remains open, but a weaker variant is pres...

متن کامل

Lightweight 4x4 MDS Matrices for Hardware-Oriented Cryptographic Primitives

Linear diffusion layer is an important part of lightweight block ciphers and hash functions. This paper presents an efficient class of lightweight 4x4 MDS matrices such that the implementation cost of them and their corresponding inverses are equal. The main target of the paper is hardware oriented cryptographic primitives and the implementation cost is measured in terms of the required number ...

متن کامل

Cryptographic Primitives

A symmetric or private-key cipher is one in which knowledge of the encryption key is explicitly or implicitly equivalent to knowing the decryption key. An asymmetric or public-key cipher is one in which the encryption key is effectively public knowledge, without giving any useful information about the decryption key. Until 30 years ago all ciphers were private-key. The very possibility of publi...

متن کامل

Verified Cryptographic Implementations for TLS1

We intend to narrow the gap between concrete implementations of cryptographic protocols and their verified models. We develop and verify a small functional implementation of the Transport Layer Security protocol (TLS 1.0). We make use of the same executable code for interoperability testing against mainstream implementations, for automated symbolic cryptographic verification, and for automated ...

متن کامل

Robust Combiners for Cryptographic Primitives

In cryptography, we do not know which computational assumptions are the most secure to rely on. Robust combiners attempt to solve this problem. Given several implementations of a certain primitive, e.g., of a commitment scheme, a combiner merges them into a new implementation that is secure if a minimum number of the input implementations are secure. A (k;n)-robust combiner merges n implementat...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

ژورنال

عنوان ژورنال: Proceedings of the ACM on programming languages

سال: 2023

ISSN: ['2475-1421']

DOI: https://doi.org/10.1145/3591272